home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / etc / firehol / examples / office.conf < prev    next >
Text File  |  2005-10-18  |  4KB  |  139 lines

  1. #
  2. # $Id: office.conf,v 1.4 2002/12/31 15:44:34 ktsaou Exp $
  3. #
  4. # CASE:
  5. # Firewall for a host with only one Ethernet interface connected to
  6. # a LAN where the traffic coming in is:
  7. #
  8. #    source 10.0.0.0/16    intranet traffic
  9. #    any other source    internet traffic
  10. #
  11. # The host can reach the internet via a gateway that SNATs the fake
  12. # address this host has to its Ethernet interface to a real one.
  13. # We assume that this NAT is bi-directional, meaning that the
  14. # gateway will DNAT requests sent from the internet to the real IP
  15. # of our host in order to enter the intranet and reach our server.
  16. #
  17. # If this NAT is not bi-directional (only SNAT but no DNAT), then
  18. # the 'internet' and 'trusted' services bellow will simply not
  19. # work (FireHOL will not complain).
  20. #
  21. # SOLUTION:
  22. # The following FireHOL configuration script assumes there are a few
  23. # network zones with different roles:
  24. #
  25. #    intranet    our company's intranet
  26. #    department    our department within the intranet
  27. #    personal    our PCs within the company
  28. #    internet    the whole internet
  29. #    trusted        computers on the internet we need to provide
  30. #            services to
  31. #
  32. # For each of the above, there are two definitions:
  33. #    1. The IP addresses or address space
  34. #    2. The services they can access on this host.
  35. #
  36. # If you want to disable something, simply comment out or empty the
  37. # variables defined for this.
  38. #
  39. # Other notes:
  40. #     - idents are rejected
  41. #    - our host is also a workstation that can run any client
  42. #    - our host does not route any traffic
  43.  
  44. version 5
  45.  
  46. # ----------------------------------------------------------------------
  47. # Definitions
  48. # ----------------------------------------------------------------------
  49.  
  50. # The network the company's intranet is using
  51. intranet="10.0.0.0/16"
  52. intranet_servers="icmp http smtp dns"
  53.  
  54. # The department must be a subnet of intranet
  55. # The department will also have access to the intranet servers, so just
  56. # add any additional servers for the department only.
  57. department="10.0.70.0/24"
  58. department_servers="samba imap pop3 lpd portmap"
  59.  
  60. # Personal must be PCs within the intranet (not the department)
  61. # Personal PCs will have access to all services the intranet and the
  62. # department have access to, so just define the additional ones.
  63. personal="10.0.70.33 10.0.70.44"
  64. personal_servers="ssh mysql nfs"
  65.  
  66. # Trusted must be real IPs
  67. # These clients will have access to all the servers the internet has
  68. # access, plus the ones defined bellow.
  69. trusted="1.1.1.1/28 2.2.2.2"
  70. trusted_servers="ssh http imap icmp telnet"
  71.  
  72. # The rest of the traffic is internet.
  73. # Define here the servers for the internet traffic, if any
  74. internet_servers="smtp"
  75.  
  76. # How many requests per second should we allow?
  77. intranet_requests="50/sec"
  78. internet_requests="10/sec"
  79.  
  80.  
  81. # ----------------------------------------------------------------------
  82. # Normally, you don't have to do anything bellow this point.
  83. # ----------------------------------------------------------------------
  84.  
  85. # The intranet
  86. interface eth0 intranet src "${intranet}"
  87.     policy reject # be friendly to the intranet to prevent timeouts
  88.     
  89.     protection strong ${intranet_requests}
  90.     
  91.     # Servers for the company's intranet
  92.     if [ ! -z "${intranet_servers}" ]
  93.     then
  94.         server "${intranet_servers}" accept
  95.     fi
  96.     
  97.     # Servers for our department
  98.     if [ ! -z "${department}" -a ! -z "${department_servers}" ]
  99.     then
  100.         server "${department_servers}" accept src "${department}"
  101.     fi
  102.     
  103.     # Servers for our PCs within the company
  104.     if [ ! -z "${personal}" -a ! -z "${personal_servers}" ]
  105.     then
  106.         server "${personal_servers} ${department_servers}" accept src "${personal}"
  107.     fi
  108.     
  109.     # Prevent ident from timing out
  110.     server ident    reject with tcp-reset
  111.     
  112.     # This is an Intranet workstation
  113.     client all    accept    # To have good accounting, this should be last.
  114.     
  115.  
  116. # The internet
  117. interface eth0 internet src not "${intranet} ${UNROUTABLE_IPS}"
  118.     policy drop # this is also the default
  119.     
  120.     protection strong ${internet_requests}
  121.     
  122.     # Public internet servers
  123.     if [ ! -z "${internet_servers}" ]
  124.     then
  125.         server "${internet_servers}" accept
  126.     fi
  127.     
  128.     # Servers for our trusted PCs
  129.     if [ ! -z "${trusted}" -a ! -z "${trusted_servers}" ]
  130.     then
  131.         server "${trusted_servers}" accept src "${trusted}"
  132.     fi
  133.     
  134.     # Prevent ident from timing out
  135.     server ident    reject with tcp-reset
  136.     
  137.     # This is an Internet workstation too
  138.     client all    accept    # To have good accounting, this should be last.
  139.